package net.toocruel.iqismart.service.dto;

import net.toocruel.iqismart.entity.common.Area;
import net.toocruel.iqismart.entity.common.Category;
import net.toocruel.iqismart.entity.common.Tag;
import net.toocruel.iqismart.entity.constants.Gender;
import org.hibernate.validator.constraints.NotBlank;
import org.springframework.web.multipart.MultipartFile;

import javax.validation.constraints.Min;
import javax.validation.constraints.NotNull;
import java.io.Serializable;
import java.util.Set;

/**
 * @Description
 * @Auther sty
 * @createTime 2018/5/17 上午10:57
 */
public class ProfileAuthenticationDTO implements Serializable {


    @NotBlank(message = "不能为空")
    private String realName;
    private Gender gender;
    @NotNull(message = "请选择省份")
    private Area province;
    @NotNull(message = "请选择城市")
    private Area city;
    @NotBlank(message = "身份职业不能为空")
    private String title;
    @NotBlank(message = "介绍不能为空")
    private String description;
    @NotBlank(message = "身份证号码不能为空")
    private String idCard;
    @NotNull(message = "请上传身份证正面图片")
    private MultipartFile idCardImage;
    @Min(value = 1,message = "请选择分类")
    private Long categoryId;
    private Category category;
    @NotBlank(message = "请选择标签")
    private String tagNames;
    private Set<Tag> tags;
    @NotNull(message = "请上传认证图片")
    private MultipartFile skillImage;


    public Long getCategoryId() {
        return categoryId;
    }

    public void setCategoryId(Long categoryId) {
        this.categoryId = categoryId;
    }

    public Set<Tag> getTags() {
        return tags;
    }

    public void setTags(Set<Tag> tags) {
        this.tags = tags;
    }

    public String getRealName() {
        return realName;
    }

    public void setRealName(String realName) {
        this.realName = realName;
    }

    public Gender getGender() {
        return gender;
    }

    public void setGender(Gender gender) {
        this.gender = gender;
    }

    public Area getProvince() {
        return province;
    }

    public void setProvince( Area province) {
        this.province = province;
    }

    public Area getCity() {
        return city;
    }

    public void setCity(Area city) {
        this.city = city;
    }

    public String getTitle() {
        return title;
    }

    public void setTitle(String title) {
        this.title = title;
    }

    public String getDescription() {
        return description;
    }

    public void setDescription(String description) {
        this.description = description;
    }

    public String getIdCard() {
        return idCard;
    }

    public void setIdCard(String idCard) {
        this.idCard = idCard;
    }

    public MultipartFile getIdCardImage() {
        return idCardImage;
    }

    public void setIdCardImage(MultipartFile idCardImage) {
        this.idCardImage = idCardImage;
    }

    public Category getCategory() {
        return category;
    }

    public void setCategory(Category category) {
        this.category = category;
    }

    public String getTagNames() {
        return tagNames;
    }

    public void setTagNames(String tagNames) {
        this.tagNames = tagNames;
    }

    public MultipartFile getSkillImage() {
        return skillImage;
    }

    public void setSkillImage(MultipartFile skillImage) {
        this.skillImage = skillImage;
    }
}
